gtk+3.0.git
3 years agoDeclare fast forward from 3.24.36-4
Simon McVittie [Wed, 8 Mar 2023 14:52:40 +0000 (14:52 +0000)]
Declare fast forward from 3.24.36-4

[dgit --quilt=unapplied --overwrite]

3 years agoreftests: Allow minor differences to be tolerated
Simon McVittie [Sat, 13 Feb 2021 16:19:10 +0000 (16:19 +0000)]
reftests: Allow minor differences to be tolerated

Based on an earlier patch by Michael Biebl, with additional inspiration
from librsvg's reftests.

Each .ui or .node reftest can have an accompanying .keyfile file
like this:

    [reftest]
    tolerated-diff-level=20
    tolerated-diff-pixels=1000

If the image differs, but the number of pixels that differ is no more
than tolerated-diff-pixels and the differences are no more than
tolerated-diff-level, then we treat it as a success with warnings, save
the .diff.png for analysis, and use g_test_incomplete() to record the
test-case as "TODO".

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3195
Applied-upstream: no, upstream want reftests to be a strict pass/fail with identical results required

Gbp-Pq: Name reftests-Allow-minor-differences-to-be-tolerated.patch

3 years agoreftest_compare_surfaces: Report how much the images differ
Simon McVittie [Sat, 13 Feb 2021 18:26:24 +0000 (18:26 +0000)]
reftest_compare_surfaces: Report how much the images differ

In unattended/non-interactive/autobuilder environments where the images
are not trivially accessible, this provides a way to distinguish between
totally different rendering and more subtle issues.

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3195
Applied-upstream: no, upstream want reftests to be a strict pass/fail with identical results required

Gbp-Pq: Name reftest_compare_surfaces-Report-how-much-the-images-diffe.patch

3 years agoDon't list images from unknown directories in icon cache
Loic Minier [Sun, 21 Oct 2007 20:05:42 +0000 (22:05 +0200)]
Don't list images from unknown directories in icon cache

After GTK 2.12.0, gtk-update-icon-cache fails if there is a PNG file
placed directly in /usr/share/icons/hicolor (not in a correct
subdirectory like 48x48/apps).

TODO: This is believed to have been fixed differently upstream, so maybe
this change is no longer necessary:
"I believe a slightly different fix that I did some time ago fixes this
too." --Matthias Clasen, 2008-02-16 04:43:10 UTC

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=451634
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=444285
Forwarded: yes
Applied-upstream: no

Gbp-Pq: Name 060_ignore-random-icons.patch

3 years agoDo not allow devices in an offscreen hierarchy to take grabs.
Robert Carr [Tue, 29 Nov 2011 23:25:29 +0000 (00:25 +0100)]
Do not allow devices in an offscreen hierarchy to take grabs.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=658563
Bug: https://gitlab.gnome.org/GNOME/gtk/issues/368
Bug-Ubuntu: https://launchpad.net/bugs/804009
Forwarded: yes

Gbp-Pq: Name 017_no_offscreen_device_grabbing.patch

3 years agoDon't let offscreen widget do grabbing
Cody Russell [Tue, 29 Nov 2011 23:25:29 +0000 (00:25 +0100)]
Don't let offscreen widget do grabbing

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=607668
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=658563
Bug: https://gitlab.gnome.org/GNOME/gtk/issues/368
Bug-Ubuntu: https://bugs.launchpad.net/bugs/512427
Forwarded: yes

Gbp-Pq: Name 016_no_offscreen_widgets_grabbing.patch

3 years agoUpdate Galician translation
Fran Dieguez [Mon, 6 Mar 2023 20:17:11 +0000 (20:17 +0000)]
Update Galician translation

Origin: upstream, 3.24.38, commit:8a946fd1a495874920654f5bacec3e767085b9ea

Gbp-Pq: Name Update-Galician-translation.patch

3 years agoUpdate Hebrew translation
Yosef Or Boczko [Sat, 4 Mar 2023 18:47:16 +0000 (18:47 +0000)]
Update Hebrew translation

Origin: upstream, 3.24.38, commit:b668e6d8a1128d8adbc481a574cfb4795b4f4064

Gbp-Pq: Name Update-Hebrew-translation.patch

3 years agoselection: Use the right mime type
Matthias Clasen [Tue, 7 Mar 2023 04:06:15 +0000 (23:06 -0500)]
selection: Use the right mime type

The correct mime type for portal file transfers
is application/vnd.portal.filetransfer.

Origin: upstream, 3.24.38, commit:5fee632386f773ff7f0af611bcdfdeeee46dab15
Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/5643

Gbp-Pq: Name selection-Use-the-right-mime-type.patch

3 years agoRelease to unstable
Simon McVittie [Wed, 8 Mar 2023 14:53:30 +0000 (14:53 +0000)]
Release to unstable

3 years agod/patches: Update translations from upstream git: gl, he
Simon McVittie [Wed, 8 Mar 2023 14:52:34 +0000 (14:52 +0000)]
d/patches: Update translations from upstream git: gl, he

3 years agoAdd patch to fix incorrect MIME type for file transfer portal
Simon McVittie [Wed, 8 Mar 2023 14:52:02 +0000 (14:52 +0000)]
Add patch to fix incorrect MIME type for file transfer portal

Regression in 3.24.37, affecting interoperability with other
implementations like the one requested in QTBUG-91357.

3 years agoUpdate changelog
Simon McVittie [Tue, 7 Mar 2023 00:07:27 +0000 (00:07 +0000)]
Update changelog

3 years agod/copyright: Remove gtk-text-input.xml
Simon McVittie [Tue, 7 Mar 2023 00:06:55 +0000 (00:06 +0000)]
d/copyright: Remove gtk-text-input.xml

This file is no longer present in the source package.

3 years agoRemove Lintian overrides for lintian/lintian!452, no longer necessary
Simon McVittie [Tue, 7 Mar 2023 00:05:49 +0000 (00:05 +0000)]
Remove Lintian overrides for lintian/lintian!452, no longer necessary

3 years agoRelease to experimental
Simon McVittie [Fri, 3 Mar 2023 20:29:54 +0000 (20:29 +0000)]
Release to experimental

3 years agod/patches: Drop interim fixes for GNOME/gtk#5386
Simon McVittie [Fri, 3 Mar 2023 19:15:49 +0000 (19:15 +0000)]
d/patches: Drop interim fixes for GNOME/gtk#5386

These were rejected upstream, and 3.24.37 hopefully fixes this more
correctly.

3 years agoDrop patches that were applied upstream, update changelog
Simon McVittie [Fri, 3 Mar 2023 15:38:06 +0000 (15:38 +0000)]
Drop patches that were applied upstream, update changelog

3 years agoNew upstream release
Simon McVittie [Fri, 3 Mar 2023 15:18:26 +0000 (15:18 +0000)]
New upstream release

3 years agoUpdate upstream source from tag 'upstream/3.24.37'
Simon McVittie [Fri, 3 Mar 2023 15:18:25 +0000 (15:18 +0000)]
Update upstream source from tag 'upstream/3.24.37'

Update to upstream version '3.24.37'
with Debian dir 0c50377cee69bbb686c600487c978d44f3d9b131

3 years agoNew upstream version 3.24.37
Simon McVittie [Fri, 3 Mar 2023 15:17:50 +0000 (15:17 +0000)]
New upstream version 3.24.37

3 years ago3.24.37
Matthias Clasen [Fri, 3 Mar 2023 00:31:52 +0000 (19:31 -0500)]
3.24.37

3 years agoliststore: Fix gtk_list_store_iter_is_valid()
Benjamin Otte [Fri, 6 Mar 2020 04:03:45 +0000 (05:03 +0100)]
liststore: Fix gtk_list_store_iter_is_valid()

The iter may be invalid, so we may not read from it.

testsuite/gtk/treemodel tests this and valgrind is shouting about it,
but it never crashed until I just ran it...

This bug is from 2004 and the test is from 2007. I guess invalid memory
accesses don't get caught by CI much.

3 years agoNEWS: Updates
Matthias Clasen [Thu, 2 Mar 2023 17:19:45 +0000 (12:19 -0500)]
NEWS: Updates

3 years agoimpcontextsimple: Return from GTask
Matthias Clasen [Fri, 3 Mar 2023 00:04:41 +0000 (19:04 -0500)]
impcontextsimple: Return from GTask

GLib complains about this now, so do it.

3 years agoStop using GTestDBus
Matthias Clasen [Fri, 3 Mar 2023 00:03:41 +0000 (19:03 -0500)]
Stop using GTestDBus

It is causing tests to timeout when libraries we are using
leak bus connections, and it turns out our tests run fine
without a session bus.

Backport of 1b265a7971171.

3 years agoMerge branch 'wip/carlosg/activation-regression-fix-3-24' into 'gtk-3-24'
Matthias Clasen [Wed, 1 Mar 2023 17:09:56 +0000 (17:09 +0000)]
Merge branch 'wip/carlosg/activation-regression-fix-3-24' into 'gtk-3-24'

gtkwindow: Fix fallbacks through xdg_activation_v1

See merge request GNOME/gtk!5581

3 years agogtkwindow: Fix fallbacks through xdg_activation_v1
Carlos Garnacho [Wed, 1 Mar 2023 16:14:01 +0000 (17:14 +0100)]
gtkwindow: Fix fallbacks through xdg_activation_v1

When activating a window, avoid the "old" gdk_notify_startup_complete*()
API that does not fallback into xdg_activation on wayland (as this is still
deferred here until show vs present happens on the surface). This was
mistakenly changed wrt the original commit backported from GTK4.

Fixes: a067938589d ("gtkwindow: Minor refactor")
3 years agoMerge branch 'file-transfer-portal-gtk3' into 'gtk-3-24'
Matthias Clasen [Sun, 26 Feb 2023 21:25:26 +0000 (21:25 +0000)]
Merge branch 'file-transfer-portal-gtk3' into 'gtk-3-24'

selection: Support the file transfer portal

See merge request GNOME/gtk!5554

3 years agoMention file transfer in the NEWS
Matthias Clasen [Sat, 25 Feb 2023 13:07:09 +0000 (08:07 -0500)]
Mention file transfer in the NEWS

3 years agoAdd a test client for file transfer portal
Matthias Clasen [Fri, 24 Feb 2023 14:38:39 +0000 (09:38 -0500)]
Add a test client for file transfer portal

3 years agoselection: Support the file transfer portal
Matthias Clasen [Fri, 24 Feb 2023 14:37:59 +0000 (09:37 -0500)]
selection: Support the file transfer portal

When the selection target is application/vnd.portal.files,
send files through the file transfer portal.

3 years agoBelated post-release bump
Matthias Clasen [Sat, 25 Feb 2023 13:05:42 +0000 (08:05 -0500)]
Belated post-release bump

3 years agoFinalize changelog and release to unstable.
Dmitry Shachnev [Wed, 15 Feb 2023 09:51:14 +0000 (12:51 +0300)]
Finalize changelog and release to unstable.

3 years agoRecord gtk+3.0 (3.24.36-4) in archive suite sid
Dmitry Shachnev [Wed, 15 Feb 2023 09:45:23 +0000 (09:45 +0000)]
Record gtk+3.0 (3.24.36-4) in archive suite sid

3 years agoMark surface as dirty before flushing it
Emmanuele Bassi [Sun, 12 Feb 2023 19:18:00 +0000 (19:18 +0000)]
Mark surface as dirty before flushing it

If we're trying to read back the contents of a GdkWindow that was
created from a foreign windowing system surface, we are going to
forcibly mark it as dirty before flushing the Cairo state.

To avoid regressing any further in the future of the 3.x branch, let's
leave a comment.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/5482
Bug-Debian: https://bugs.debian.org/1031112
Origin: upstream, 3.24.37, commit:fba09dbfc7

Gbp-Pq: Name Mark-surface-as-dirty-before-flushing-it.patch

3 years agogdk/wayland: save custom xdg-activation startup_id
Joan Bruguera [Tue, 6 Dec 2022 23:51:28 +0000 (23:51 +0000)]
gdk/wayland: save custom xdg-activation startup_id

We must save the startup id. in gdk_wayland_display_notify_startup_complete
which was set by a previous gtk_window_set_startup_id call so we can use it
later when presenting the window.

Needed for activation of gnome-terminal (also needs patches on the application
side, see https://gitlab.gnome.org/GNOME/gnome-terminal/-/issues/7952).

Signed-off-by: Joan Bruguera <joanbrugueram@gmail.com>
Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/5386
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5301
Applied-upstream: no, rejected in https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5302#note_1622250

Gbp-Pq: Name gdk-wayland-save-custom-xdg-activation-startup_id.patch

3 years agowindow: focus on window show for wayland activation
Joan Bruguera [Tue, 6 Dec 2022 20:55:53 +0000 (20:55 +0000)]
window: focus on window show for wayland activation

When using xdg_activation this is responsible for submitting
the activation token / startup id to the compositor.

This supersedes 5dca6dce91b4413064c858ae011ea7b1e33421e2, which misses the case
where the window is shown with gtk_widget_show instead of gtk_window_present.
Note 5dca6dce91 was also accidentally missing on the xdg-activation GTK3 port.

Signed-off-by: Joan Bruguera <joanbrugueram@gmail.com>
Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/5386
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5301
Applied-upstream: no, rejected in https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5302#note_1622250

Gbp-Pq: Name window-focus-on-window-show-for-wayland-activation.patch

3 years agoreftests: Allow minor differences to be tolerated
Simon McVittie [Sat, 13 Feb 2021 16:19:10 +0000 (16:19 +0000)]
reftests: Allow minor differences to be tolerated

Based on an earlier patch by Michael Biebl, with additional inspiration
from librsvg's reftests.

Each .ui or .node reftest can have an accompanying .keyfile file
like this:

    [reftest]
    tolerated-diff-level=20
    tolerated-diff-pixels=1000

If the image differs, but the number of pixels that differ is no more
than tolerated-diff-pixels and the differences are no more than
tolerated-diff-level, then we treat it as a success with warnings, save
the .diff.png for analysis, and use g_test_incomplete() to record the
test-case as "TODO".

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3195
Applied-upstream: no, upstream want reftests to be a strict pass/fail with identical results required

Gbp-Pq: Name reftests-Allow-minor-differences-to-be-tolerated.patch

3 years agoreftest_compare_surfaces: Report how much the images differ
Simon McVittie [Sat, 13 Feb 2021 18:26:24 +0000 (18:26 +0000)]
reftest_compare_surfaces: Report how much the images differ

In unattended/non-interactive/autobuilder environments where the images
are not trivially accessible, this provides a way to distinguish between
totally different rendering and more subtle issues.

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3195
Applied-upstream: no, upstream want reftests to be a strict pass/fail with identical results required

Gbp-Pq: Name reftest_compare_surfaces-Report-how-much-the-images-diffe.patch

3 years agoDon't list images from unknown directories in icon cache
Loic Minier [Sun, 21 Oct 2007 20:05:42 +0000 (22:05 +0200)]
Don't list images from unknown directories in icon cache

After GTK 2.12.0, gtk-update-icon-cache fails if there is a PNG file
placed directly in /usr/share/icons/hicolor (not in a correct
subdirectory like 48x48/apps).

TODO: This is believed to have been fixed differently upstream, so maybe
this change is no longer necessary:
"I believe a slightly different fix that I did some time ago fixes this
too." --Matthias Clasen, 2008-02-16 04:43:10 UTC

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=451634
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=444285
Forwarded: yes
Applied-upstream: no

Gbp-Pq: Name 060_ignore-random-icons.patch

3 years agoDo not allow devices in an offscreen hierarchy to take grabs.
Robert Carr [Tue, 29 Nov 2011 23:25:29 +0000 (00:25 +0100)]
Do not allow devices in an offscreen hierarchy to take grabs.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=658563
Bug: https://gitlab.gnome.org/GNOME/gtk/issues/368
Bug-Ubuntu: https://launchpad.net/bugs/804009
Forwarded: yes

Gbp-Pq: Name 017_no_offscreen_device_grabbing.patch

3 years agoDon't let offscreen widget do grabbing
Cody Russell [Tue, 29 Nov 2011 23:25:29 +0000 (00:25 +0100)]
Don't let offscreen widget do grabbing

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=607668
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=658563
Bug: https://gitlab.gnome.org/GNOME/gtk/issues/368
Bug-Ubuntu: https://bugs.launchpad.net/bugs/512427
Forwarded: yes

Gbp-Pq: Name 016_no_offscreen_widgets_grabbing.patch

3 years agoRemove warning
hrdl [Sat, 28 Jan 2023 13:20:49 +0000 (14:20 +0100)]
Remove warning

Origin: upstream, 3.24.37, commit:15f0ac6f93

Gbp-Pq: Name Remove-warning.patch

3 years agoFixes incorrect grabbing behaviour causing subsequent rejection of input
hrdl [Sun, 15 May 2022 20:48:22 +0000 (22:48 +0200)]
Fixes incorrect grabbing behaviour causing subsequent rejection of input

mouse_location can be set to NULL in gtk_range_update_mouse_location(). This
causes a match with stepper_?_gadget in gtk_range_multipress_gesture_pressed(),
as both are NULL. This leads to a grab being added internally and as well, a
critical error message, and a subsequent rejection of touch inputs. Returning
early when mouse_location is NULL prevents this.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4947
Origin: upstream, 3.24.37, commit:5c6d2c8e87

Gbp-Pq: Name Fixes-incorrect-grabbing-behaviour-causing-subsequent-rej.patch

3 years agogdk/wayland: set requesting surface to xdg-activation
Joan Bruguera [Sun, 4 Dec 2022 22:54:51 +0000 (22:54 +0000)]
gdk/wayland: set requesting surface to xdg-activation

The argument to xdg_activation_token_v1_set_surface is documented to be the
surface requesting the activation, not the surface to be activated, which is
given later when calling xdg_activation_v1_activate.
(c.f. https://gitlab.freedesktop.org/wayland/wayland-protocols/-/commit/36cee4bdbcaf3a75f567315809953b5e21d703da)

Use the same logic as in gdk_wayland_app_launch_context_get_startup_notify_id,
i.e. if we have a surface with focus, set that, otherwise set NULL.

This fixes requesting urgent/focus on wlroots (compositors like Sway, etc.),
which was blocked as the surface requesting the activation didn't have focus.

Backport of: 43c1a433aa0839826451f71029965d8e359a9178

Signed-off-by: Joan Bruguera <joanbrugueram@gmail.com>
Origin: upstream, 3.24.37, commit:41827d9f72

Gbp-Pq: Name gdk-wayland-set-requesting-surface-to-xdg-activation.patch

3 years agogl: Synchronize when calling MakeCurrent
Matthias Clasen [Fri, 27 Jan 2023 12:07:36 +0000 (07:07 -0500)]
gl: Synchronize when calling MakeCurrent

When making out GL context current, wait
until the GPU is done with commands from
the previous context.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/5517
Origin: upstream, 3.24.37, commit:9811485990

Gbp-Pq: Name gl-Synchronize-when-calling-MakeCurrent.patch

3 years agogtkapplication: Do not call gdk_display_notify_startup_complete()
Carlos Garnacho [Wed, 18 Jan 2023 20:05:28 +0000 (21:05 +0100)]
gtkapplication: Do not call gdk_display_notify_startup_complete()

This should do nothing worthwhile anymore, the X11/Wayland GtkApplication
implementations do already pass the startup ID from the platform_data
via windowing specific APIs, and the application handling the request
via show()/present() should trigger the activation request.

(cherry-picked from commit 3526d8b299becb7cd1e970ea5228a141eae20257)

Origin: upstream, 3.24.37, commit:79e11bed1a

Gbp-Pq: Name gtkapplication-Do-not-call-gdk_display_notify_startup_com.patch

3 years agogtkwindow: Shuffle gdk_window_set_startup_id() calls
Carlos Garnacho [Wed, 18 Jan 2023 20:01:00 +0000 (21:01 +0100)]
gtkwindow: Shuffle gdk_window_set_startup_id() calls

While this used to be tangential to windows showing or requesting
focus, the xdg-activation Wayland protocol does merge both concepts
together.

But also, for a correct interaction with the compositor, the
toolkit should ideally merge the activation request resulting from
both into the same one, so that the gdk_window_focus() request
replies to the startup token that started the application and
correct focus-stealing prevention/etc happens, instead making up
one just in time for the focus request.

This kind of requires doing things in the right order, a show()
request on the GtkWindow should activate any pending activation
token on the toplevel, a present() request should additionally
create a new token if there was none pending. And
xdg_activation_v1_activate() should happen once on both.

Shuffle the gdk_window_set_startup_id() calls so that this
happens in the right order for Wayland, while making X11 happy
too.

(cherry-picked from commit e8adfa2a889cd45ee0ce0727d7eae0a61fdb7dce)

Origin: upstream, 3.24.37, commit:2a47038635

Gbp-Pq: Name gtkwindow-Shuffle-gdk_window_set_startup_id-calls.patch

3 years agogdk/x11: Emit "remove" s-n message from gdk_toplevel_set_startup_id
Carlos Garnacho [Wed, 18 Jan 2023 19:37:01 +0000 (20:37 +0100)]
gdk/x11: Emit "remove" s-n message from gdk_toplevel_set_startup_id

In the way towards deprecating gdk_display_notify_startup_complete(),
make gdk_toplevel_set_startup_id() on X11 perform this piece of messaging
itself. It should be harmless that the message is emitted twice, if
callers do still use that API.

(cherry-picked from commit 7fab1b85adbddff7628e3e916f00677080fb9150)

Origin: upstream, 3.24.37, commit:6ccd786a93

Gbp-Pq: Name gdk-x11-Emit-remove-s-n-message-from-gdk_toplevel_set_sta.patch

3 years agogdk/wayland: Perform xdg_activation on gdk_window_set_startup_id
Carlos Garnacho [Wed, 18 Jan 2023 19:03:01 +0000 (20:03 +0100)]
gdk/wayland: Perform xdg_activation on gdk_window_set_startup_id

This call has everything to perform activation as specified by the
xdg_activation protocol, notably a surface to activate as opposed to
gdk_notify_startup_complete().

Make activation happen here, so that the surface gets activated when
its gets a startup ID assigned.

(cherry-picked from commit 5aeabdb3d404579b5cab4fff1642ed116f745a8b)

Origin: upstream, 3.24.37, commit:f5a5480fe2

Gbp-Pq: Name gdk-wayland-Perform-xdg_activation-on-gdk_window_set_star.patch

3 years agogtkwindow: Minor refactor
Carlos Garnacho [Wed, 18 Jan 2023 18:55:31 +0000 (19:55 +0100)]
gtkwindow: Minor refactor

Move the handling of the startup ID to a separate function, since
this will be called from several places.

(cherry-picked from commit 6f01f846dc66a6359a1524ace13377536821dbb0)

Origin: upstream, 3.24.37, commit:a067938589

Gbp-Pq: Name gtkwindow-Minor-refactor.patch

3 years agoTake UI scale into acount when loading "image-missing" fallback
Brian J. Tarricone [Sat, 21 Jan 2023 20:45:09 +0000 (12:45 -0800)]
Take UI scale into acount when loading "image-missing" fallback

Fallback icons loaded were loading at half size (for a 2x scale) and for
cases where it mattered, were being positioned off-center.

Origin: upstream, 3.24.37, commit:89c7d5fe4b

Gbp-Pq: Name Take-UI-scale-into-acount-when-loading-image-missing-fall.patch

3 years agoUpdate Lithuanian translation
Aurimas Černius [Thu, 19 Jan 2023 21:09:54 +0000 (21:09 +0000)]
Update Lithuanian translation

Origin: upstream, 3.24.37, commit:128cdaa113

Gbp-Pq: Name Update-Lithuanian-translation.patch

3 years agogtkcssanimatedstyle: Fix return of new_advance()
Matteo Percivaldi [Fri, 13 Jan 2023 20:19:37 +0000 (15:19 -0500)]
gtkcssanimatedstyle: Fix return of new_advance()

This was causing animation and transition to stop randomly and reset
their state to initial state.

This issue has existed since commit
7b68bdb8316fc1bb96c4a5ad16c1885506131d22.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4426
Origin: upstream, 3.24.37, commit:6a2fb84446

Gbp-Pq: Name gtkcssanimatedstyle-Fix-return-of-new_advance.patch

3 years agoUpdate Turkish translation
Emin Tufan Çetin [Wed, 11 Jan 2023 06:57:09 +0000 (06:57 +0000)]
Update Turkish translation

Origin: upstream, 3.24.37, commit:7a9f88ee48

Gbp-Pq: Name Update-Turkish-translation.patch

3 years agoUpdate Abkhazian translation
Nart Tlisha [Thu, 5 Jan 2023 12:36:09 +0000 (12:36 +0000)]
Update Abkhazian translation

Origin: upstream, 3.24.37, commit:a5198dd935

Gbp-Pq: Name Update-Abkhazian-translation-1.patch

3 years agoUpdate Abkhazian translation
Nart Tlisha [Thu, 5 Jan 2023 12:24:58 +0000 (12:24 +0000)]
Update Abkhazian translation

Origin: upstream, 3.24.37, commit:459f5537b3

Gbp-Pq: Name Update-Abkhazian-translation.patch

3 years agoTreat XKB_MOD_NAME_LOGO as super key
Thomas Jost [Tue, 3 Jan 2023 16:09:04 +0000 (17:09 +0100)]
Treat XKB_MOD_NAME_LOGO as super key

Loosely based on !5304, which fixes #4913 for GTK3.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4913
Origin: upstream, 3.24.37, commit:0f55e9552fbd9a248bc180d83c885066bd6e899d

Gbp-Pq: Name Treat-XKB_MOD_NAME_LOGO-as-super-key.patch

3 years agotests: make accel tests easier to debug
Thomas Jost [Tue, 3 Jan 2023 15:58:18 +0000 (16:58 +0100)]
tests: make accel tests easier to debug

Origin: upstream, 3.24.37, commit:7a41da3a6e3cfd01decfaab7b7e6783d4a018734

Gbp-Pq: Name tests-make-accel-tests-easier-to-debug.patch

3 years agoFix build_gir logic
Staudey [Tue, 27 Dec 2022 04:54:52 +0000 (04:54 +0000)]
Fix build_gir logic

Origin: upstream, 3.24.37, commit:7e4a2a5724a184c418314f4fdbd7a065ba9e203d

Gbp-Pq: Name Fix-build_gir-logic.patch

3 years agogtk+3.0 (3.24.36-4) unstable; urgency=medium
Dmitry Shachnev [Wed, 15 Feb 2023 09:45:23 +0000 (09:45 +0000)]
gtk+3.0 (3.24.36-4) unstable; urgency=medium

  * Team upload.
  * Backport upstream patch to fix outdated screen state on screenshots.
    (Closes: #1031112)

[dgit import unpatched gtk+3.0 3.24.36-4]

3 years agoImport gtk+3.0_3.24.36-4.debian.tar.xz
Dmitry Shachnev [Wed, 15 Feb 2023 09:45:23 +0000 (09:45 +0000)]
Import gtk+3.0_3.24.36-4.debian.tar.xz

[dgit import tarball gtk+3.0 3.24.36-4 gtk+3.0_3.24.36-4.debian.tar.xz]

3 years agoBackport upstream patch to fix outdated screen state on screenshots.
Dmitry Shachnev [Wed, 15 Feb 2023 09:44:46 +0000 (12:44 +0300)]
Backport upstream patch to fix outdated screen state on screenshots.

Closes: #1031112.
3 years agoMerge branch 'backport-mr-4620-to-gtk-3-24' into 'gtk-3-24'
Luca Bacci [Mon, 13 Feb 2023 15:34:24 +0000 (15:34 +0000)]
Merge branch 'backport-mr-4620-to-gtk-3-24' into 'gtk-3-24'

GdkWin32: Mouse events fixes

See merge request GNOME/gtk!5493

3 years agoGdkWin32: Generate crossing event after button release
Luca Bacci [Fri, 10 Feb 2023 20:41:48 +0000 (21:41 +0100)]
GdkWin32: Generate crossing event after button release

This is a backport of commit cb0c1b3f to gtk-3-24

3 years agoGdkWin32: Correct generation of crossing events when holding an implicit grab
Luca Bacci [Fri, 10 Feb 2023 20:32:29 +0000 (21:32 +0100)]
GdkWin32: Correct generation of crossing events when holding an implicit grab

This is a backport of commit 91f20016 to gtk-3-24

3 years agoMerge branch 'ebassi/issue-5482' into 'gtk-3-24'
Matthias Clasen [Sun, 12 Feb 2023 20:04:04 +0000 (20:04 +0000)]
Merge branch 'ebassi/issue-5482' into 'gtk-3-24'

Mark surface as dirty before flushing it

See merge request GNOME/gtk!5505

3 years agoMark surface as dirty before flushing it
Emmanuele Bassi [Sun, 12 Feb 2023 19:18:00 +0000 (19:18 +0000)]
Mark surface as dirty before flushing it

If we're trying to read back the contents of a GdkWindow that was
created from a foreign windowing system surface, we are going to
forcibly mark it as dirty before flushing the Cairo state.

To avoid regressing any further in the future of the 3.x branch, let's
leave a comment.

Fixes: #5482
3 years ago[quartz] Silence two compiler warnings.
John Ralls [Sat, 11 Feb 2023 20:51:42 +0000 (12:51 -0800)]
[quartz] Silence two compiler warnings.

One unused function, one return type mismatch.

3 years ago[quartz] Set the sRGB colorspace on the IOSurface.
John Ralls [Sat, 11 Feb 2023 20:48:34 +0000 (12:48 -0800)]
[quartz] Set the sRGB colorspace on the IOSurface.

Enables colorspace tranformation in Core Animation. This transform
is executed on the GPU and unlike the Core Graphics one has no
affect on performance.

Fixes #5579

3 years agoMerge branch 'gtk-3-24-focus-to-modal-parant-and-transient-for' into 'gtk-3-24'
Matthias Clasen [Fri, 10 Feb 2023 11:37:49 +0000 (11:37 +0000)]
Merge branch 'gtk-3-24-focus-to-modal-parant-and-transient-for' into 'gtk-3-24'

Solution for focus loss problem for complex multi Window UI in Broadway backend

See merge request GNOME/gtk!3990

3 years agoMerge branch 'backport-mr-5489' into 'gtk-3-24'
Matthias Clasen [Fri, 10 Feb 2023 11:37:11 +0000 (11:37 +0000)]
Merge branch 'backport-mr-5489' into 'gtk-3-24'

Backport !5489 to gtk-3-24

See merge request GNOME/gtk!5490

3 years agosearchengine: Emit a simple warning when tracker init failed
Gaël Bonithon [Thu, 9 Feb 2023 18:26:47 +0000 (19:26 +0100)]
searchengine: Emit a simple warning when tracker init failed

Failure is allowed by nature of GInitable, and this avoids unnecessary
crashing of programs running with G_DEBUG=fatal-criticals.

(cherry picked from commit 6215b38e645f5047d52e625562efccc1e4f85867)

3 years agosearchengine: Add missing sanity check
Gaël Bonithon [Thu, 9 Feb 2023 18:25:04 +0000 (19:25 +0100)]
searchengine: Add missing sanity check

(cherry picked from commit 41490f96240eb04d85cbe5e1f264ab09ec00b9e0)

3 years agoRelease to unstable
Simon McVittie [Sat, 4 Feb 2023 17:32:10 +0000 (17:32 +0000)]
Release to unstable

3 years agoMake fast forward from 3.24.36-2
Simon McVittie [Sat, 4 Feb 2023 17:31:57 +0000 (17:31 +0000)]
Make fast forward from 3.24.36-2

[dgit --quilt=unapplied]

3 years agogdk/wayland: save custom xdg-activation startup_id
Joan Bruguera [Tue, 6 Dec 2022 23:51:28 +0000 (23:51 +0000)]
gdk/wayland: save custom xdg-activation startup_id

We must save the startup id. in gdk_wayland_display_notify_startup_complete
which was set by a previous gtk_window_set_startup_id call so we can use it
later when presenting the window.

Needed for activation of gnome-terminal (also needs patches on the application
side, see https://gitlab.gnome.org/GNOME/gnome-terminal/-/issues/7952).

Signed-off-by: Joan Bruguera <joanbrugueram@gmail.com>
Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/5386
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5301
Applied-upstream: no, rejected in https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5302#note_1622250

Gbp-Pq: Name gdk-wayland-save-custom-xdg-activation-startup_id.patch

3 years agowindow: focus on window show for wayland activation
Joan Bruguera [Tue, 6 Dec 2022 20:55:53 +0000 (20:55 +0000)]
window: focus on window show for wayland activation

When using xdg_activation this is responsible for submitting
the activation token / startup id to the compositor.

This supersedes 5dca6dce91b4413064c858ae011ea7b1e33421e2, which misses the case
where the window is shown with gtk_widget_show instead of gtk_window_present.
Note 5dca6dce91 was also accidentally missing on the xdg-activation GTK3 port.

Signed-off-by: Joan Bruguera <joanbrugueram@gmail.com>
Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/5386
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5301
Applied-upstream: no, rejected in https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5302#note_1622250

Gbp-Pq: Name window-focus-on-window-show-for-wayland-activation.patch

3 years agoreftests: Allow minor differences to be tolerated
Simon McVittie [Sat, 13 Feb 2021 16:19:10 +0000 (16:19 +0000)]
reftests: Allow minor differences to be tolerated

Based on an earlier patch by Michael Biebl, with additional inspiration
from librsvg's reftests.

Each .ui or .node reftest can have an accompanying .keyfile file
like this:

    [reftest]
    tolerated-diff-level=20
    tolerated-diff-pixels=1000

If the image differs, but the number of pixels that differ is no more
than tolerated-diff-pixels and the differences are no more than
tolerated-diff-level, then we treat it as a success with warnings, save
the .diff.png for analysis, and use g_test_incomplete() to record the
test-case as "TODO".

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3195
Applied-upstream: no, upstream want reftests to be a strict pass/fail with identical results required

Gbp-Pq: Name reftests-Allow-minor-differences-to-be-tolerated.patch

3 years agoreftest_compare_surfaces: Report how much the images differ
Simon McVittie [Sat, 13 Feb 2021 18:26:24 +0000 (18:26 +0000)]
reftest_compare_surfaces: Report how much the images differ

In unattended/non-interactive/autobuilder environments where the images
are not trivially accessible, this provides a way to distinguish between
totally different rendering and more subtle issues.

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3195
Applied-upstream: no, upstream want reftests to be a strict pass/fail with identical results required

Gbp-Pq: Name reftest_compare_surfaces-Report-how-much-the-images-diffe.patch

3 years agoDon't list images from unknown directories in icon cache
Loic Minier [Sun, 21 Oct 2007 20:05:42 +0000 (22:05 +0200)]
Don't list images from unknown directories in icon cache

After GTK 2.12.0, gtk-update-icon-cache fails if there is a PNG file
placed directly in /usr/share/icons/hicolor (not in a correct
subdirectory like 48x48/apps).

TODO: This is believed to have been fixed differently upstream, so maybe
this change is no longer necessary:
"I believe a slightly different fix that I did some time ago fixes this
too." --Matthias Clasen, 2008-02-16 04:43:10 UTC

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=451634
Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=444285
Forwarded: yes
Applied-upstream: no

Gbp-Pq: Name 060_ignore-random-icons.patch

3 years agoDo not allow devices in an offscreen hierarchy to take grabs.
Robert Carr [Tue, 29 Nov 2011 23:25:29 +0000 (00:25 +0100)]
Do not allow devices in an offscreen hierarchy to take grabs.

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=658563
Bug: https://gitlab.gnome.org/GNOME/gtk/issues/368
Bug-Ubuntu: https://launchpad.net/bugs/804009
Forwarded: yes

Gbp-Pq: Name 017_no_offscreen_device_grabbing.patch

3 years agoDon't let offscreen widget do grabbing
Cody Russell [Tue, 29 Nov 2011 23:25:29 +0000 (00:25 +0100)]
Don't let offscreen widget do grabbing

Bug: https://bugzilla.gnome.org/show_bug.cgi?id=607668
Bug: https://bugzilla.gnome.org/show_bug.cgi?id=658563
Bug: https://gitlab.gnome.org/GNOME/gtk/issues/368
Bug-Ubuntu: https://bugs.launchpad.net/bugs/512427
Forwarded: yes

Gbp-Pq: Name 016_no_offscreen_widgets_grabbing.patch

3 years agoRemove warning
hrdl [Sat, 28 Jan 2023 13:20:49 +0000 (14:20 +0100)]
Remove warning

Origin: upstream, 3.24.37, commit:15f0ac6f93

Gbp-Pq: Name Remove-warning.patch

3 years agoFixes incorrect grabbing behaviour causing subsequent rejection of input
hrdl [Sun, 15 May 2022 20:48:22 +0000 (22:48 +0200)]
Fixes incorrect grabbing behaviour causing subsequent rejection of input

mouse_location can be set to NULL in gtk_range_update_mouse_location(). This
causes a match with stepper_?_gadget in gtk_range_multipress_gesture_pressed(),
as both are NULL. This leads to a grab being added internally and as well, a
critical error message, and a subsequent rejection of touch inputs. Returning
early when mouse_location is NULL prevents this.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4947
Origin: upstream, 3.24.37, commit:5c6d2c8e87

Gbp-Pq: Name Fixes-incorrect-grabbing-behaviour-causing-subsequent-rej.patch

3 years agogdk/wayland: set requesting surface to xdg-activation
Joan Bruguera [Sun, 4 Dec 2022 22:54:51 +0000 (22:54 +0000)]
gdk/wayland: set requesting surface to xdg-activation

The argument to xdg_activation_token_v1_set_surface is documented to be the
surface requesting the activation, not the surface to be activated, which is
given later when calling xdg_activation_v1_activate.
(c.f. https://gitlab.freedesktop.org/wayland/wayland-protocols/-/commit/36cee4bdbcaf3a75f567315809953b5e21d703da)

Use the same logic as in gdk_wayland_app_launch_context_get_startup_notify_id,
i.e. if we have a surface with focus, set that, otherwise set NULL.

This fixes requesting urgent/focus on wlroots (compositors like Sway, etc.),
which was blocked as the surface requesting the activation didn't have focus.

Backport of: 43c1a433aa0839826451f71029965d8e359a9178

Signed-off-by: Joan Bruguera <joanbrugueram@gmail.com>
Origin: upstream, 3.24.37, commit:41827d9f72

Gbp-Pq: Name gdk-wayland-set-requesting-surface-to-xdg-activation.patch

3 years agogl: Synchronize when calling MakeCurrent
Matthias Clasen [Fri, 27 Jan 2023 12:07:36 +0000 (07:07 -0500)]
gl: Synchronize when calling MakeCurrent

When making out GL context current, wait
until the GPU is done with commands from
the previous context.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/5517
Origin: upstream, 3.24.37, commit:9811485990

Gbp-Pq: Name gl-Synchronize-when-calling-MakeCurrent.patch

3 years agogtkapplication: Do not call gdk_display_notify_startup_complete()
Carlos Garnacho [Wed, 18 Jan 2023 20:05:28 +0000 (21:05 +0100)]
gtkapplication: Do not call gdk_display_notify_startup_complete()

This should do nothing worthwhile anymore, the X11/Wayland GtkApplication
implementations do already pass the startup ID from the platform_data
via windowing specific APIs, and the application handling the request
via show()/present() should trigger the activation request.

(cherry-picked from commit 3526d8b299becb7cd1e970ea5228a141eae20257)

Origin: upstream, 3.24.37, commit:79e11bed1a

Gbp-Pq: Name gtkapplication-Do-not-call-gdk_display_notify_startup_com.patch

3 years agogtkwindow: Shuffle gdk_window_set_startup_id() calls
Carlos Garnacho [Wed, 18 Jan 2023 20:01:00 +0000 (21:01 +0100)]
gtkwindow: Shuffle gdk_window_set_startup_id() calls

While this used to be tangential to windows showing or requesting
focus, the xdg-activation Wayland protocol does merge both concepts
together.

But also, for a correct interaction with the compositor, the
toolkit should ideally merge the activation request resulting from
both into the same one, so that the gdk_window_focus() request
replies to the startup token that started the application and
correct focus-stealing prevention/etc happens, instead making up
one just in time for the focus request.

This kind of requires doing things in the right order, a show()
request on the GtkWindow should activate any pending activation
token on the toplevel, a present() request should additionally
create a new token if there was none pending. And
xdg_activation_v1_activate() should happen once on both.

Shuffle the gdk_window_set_startup_id() calls so that this
happens in the right order for Wayland, while making X11 happy
too.

(cherry-picked from commit e8adfa2a889cd45ee0ce0727d7eae0a61fdb7dce)

Origin: upstream, 3.24.37, commit:2a47038635

Gbp-Pq: Name gtkwindow-Shuffle-gdk_window_set_startup_id-calls.patch

3 years agogdk/x11: Emit "remove" s-n message from gdk_toplevel_set_startup_id
Carlos Garnacho [Wed, 18 Jan 2023 19:37:01 +0000 (20:37 +0100)]
gdk/x11: Emit "remove" s-n message from gdk_toplevel_set_startup_id

In the way towards deprecating gdk_display_notify_startup_complete(),
make gdk_toplevel_set_startup_id() on X11 perform this piece of messaging
itself. It should be harmless that the message is emitted twice, if
callers do still use that API.

(cherry-picked from commit 7fab1b85adbddff7628e3e916f00677080fb9150)

Origin: upstream, 3.24.37, commit:6ccd786a93

Gbp-Pq: Name gdk-x11-Emit-remove-s-n-message-from-gdk_toplevel_set_sta.patch

3 years agogdk/wayland: Perform xdg_activation on gdk_window_set_startup_id
Carlos Garnacho [Wed, 18 Jan 2023 19:03:01 +0000 (20:03 +0100)]
gdk/wayland: Perform xdg_activation on gdk_window_set_startup_id

This call has everything to perform activation as specified by the
xdg_activation protocol, notably a surface to activate as opposed to
gdk_notify_startup_complete().

Make activation happen here, so that the surface gets activated when
its gets a startup ID assigned.

(cherry-picked from commit 5aeabdb3d404579b5cab4fff1642ed116f745a8b)

Origin: upstream, 3.24.37, commit:f5a5480fe2

Gbp-Pq: Name gdk-wayland-Perform-xdg_activation-on-gdk_window_set_star.patch

3 years agogtkwindow: Minor refactor
Carlos Garnacho [Wed, 18 Jan 2023 18:55:31 +0000 (19:55 +0100)]
gtkwindow: Minor refactor

Move the handling of the startup ID to a separate function, since
this will be called from several places.

(cherry-picked from commit 6f01f846dc66a6359a1524ace13377536821dbb0)

Origin: upstream, 3.24.37, commit:a067938589

Gbp-Pq: Name gtkwindow-Minor-refactor.patch

3 years agoTake UI scale into acount when loading "image-missing" fallback
Brian J. Tarricone [Sat, 21 Jan 2023 20:45:09 +0000 (12:45 -0800)]
Take UI scale into acount when loading "image-missing" fallback

Fallback icons loaded were loading at half size (for a 2x scale) and for
cases where it mattered, were being positioned off-center.

Origin: upstream, 3.24.37, commit:89c7d5fe4b

Gbp-Pq: Name Take-UI-scale-into-acount-when-loading-image-missing-fall.patch

3 years agoUpdate Lithuanian translation
Aurimas Černius [Thu, 19 Jan 2023 21:09:54 +0000 (21:09 +0000)]
Update Lithuanian translation

Origin: upstream, 3.24.37, commit:128cdaa113

Gbp-Pq: Name Update-Lithuanian-translation.patch

3 years agogtkcssanimatedstyle: Fix return of new_advance()
Matteo Percivaldi [Fri, 13 Jan 2023 20:19:37 +0000 (15:19 -0500)]
gtkcssanimatedstyle: Fix return of new_advance()

This was causing animation and transition to stop randomly and reset
their state to initial state.

This issue has existed since commit
7b68bdb8316fc1bb96c4a5ad16c1885506131d22.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4426
Origin: upstream, 3.24.37, commit:6a2fb84446

Gbp-Pq: Name gtkcssanimatedstyle-Fix-return-of-new_advance.patch

3 years agoUpdate Turkish translation
Emin Tufan Çetin [Wed, 11 Jan 2023 06:57:09 +0000 (06:57 +0000)]
Update Turkish translation

Origin: upstream, 3.24.37, commit:7a9f88ee48

Gbp-Pq: Name Update-Turkish-translation.patch

3 years agoUpdate Abkhazian translation
Nart Tlisha [Thu, 5 Jan 2023 12:36:09 +0000 (12:36 +0000)]
Update Abkhazian translation

Origin: upstream, 3.24.37, commit:a5198dd935

Gbp-Pq: Name Update-Abkhazian-translation-1.patch

3 years agoUpdate Abkhazian translation
Nart Tlisha [Thu, 5 Jan 2023 12:24:58 +0000 (12:24 +0000)]
Update Abkhazian translation

Origin: upstream, 3.24.37, commit:459f5537b3

Gbp-Pq: Name Update-Abkhazian-translation.patch

3 years agoTreat XKB_MOD_NAME_LOGO as super key
Thomas Jost [Tue, 3 Jan 2023 16:09:04 +0000 (17:09 +0100)]
Treat XKB_MOD_NAME_LOGO as super key

Loosely based on !5304, which fixes #4913 for GTK3.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4913
Origin: upstream, 3.24.37, commit:0f55e9552fbd9a248bc180d83c885066bd6e899d

Gbp-Pq: Name Treat-XKB_MOD_NAME_LOGO-as-super-key.patch